package com.crm.service.cluePoolManager;

import com.crm.model.entity.cluePoolManager.CluePoolPublic;
import com.crm.model.qo.cluePoolManager.CluePoolOpenSeaQO;
import com.crm.model.vo.cluePoolManager.CluePoolPubliclOpenSeaVO;

import java.util.List;
import java.util.Map;

/**
 * @Author yincuimei
 * @Date 2020/12/24 11:16
 */
public interface CluePoolPublicDbService {

    /**
     * 插入线索池
     * @param cluePoolPublic
     * @return
     */
    Boolean insertCluePoolPublic(CluePoolPublic cluePoolPublic);

    /**
     * 删除线索池(私有池、分公司公有池、全国池子)
     * @param cluePoolPublic ---线索池信息
     * @return
     */
    Boolean deleteCluePoolPublic(CluePoolPublic cluePoolPublic);

    /**
     *根据线索池id查询线索池信息
     */
    CluePoolPublic selectCluePoolPublicById(String cluePoolId);

    /**
     * 根据线索池名称查询线索池
     * @param cluePoolName
     * @return
     */
    CluePoolPublic selectCluePoolPublicByName(String cluePoolName);

    /**
     * 根据名称和线索池id判断有没有重复的线索池
     */
    CluePoolPublic selectCluePoolPublicUpdateByNameAndId(String cluePoolName,String cluePoolId);

    /**
     * @author wll
     * info 用户模块-线索池管理-线索池公海表单 (1-全国 2-公司 3-我参与的)
     * @return
     */
    List<CluePoolPubliclOpenSeaVO> selectCluePoolPublicInfo(Map map);

    /**
     * 根据线索池主键更新私有线索池信息
     * @return
     */
    Boolean updateCluePoolPublicById(CluePoolPublic cluePoolPublic);


    /**
     * 查询全国默认池的信息
     * @return
     */
    CluePoolPublic selectNationalDefaultPoolInfo();
}
